//这是promise 的使用方法
function getData() {
  return new Promise((resolve, reject) => {
    // 异步操作
    setTimeout(() => resolve('数据'), 1000);
  });
}

// 模拟获取更多数据的函数
function getMoreData(data) {
    return new Promise((resolve, reject) => {
        // 异步操作：1.5秒后基于前一步的数据返回更多信息
        setTimeout(() => resolve(`更多信息: ${data}`), 1500);
    });
}

getData()
  .then(data => {
    console.log("第一个then:" + data);
    return getMoreData(data);
  })
  .then(moreData => {
    console.log("第二个then:" + moreData);
  })
  .catch(error => {
    console.error(error);
  });


//async 函数总是返回一个 Promise：
//在函数声明前添加 async 关键字，表示该函数是异步的：
// 如果返回值不是 Promise，会自动包装成 resolved Promise
// 如果抛出异常，会返回 rejected Promise

//await 会暂停 async 函数的执行，等待 Promise 完成：
//await 只能在 async 函数内部使用：
//如果 Promise 被 resolve，返回 resolve 的值
//如果 Promise 被 reject，抛出错误（可以用 try/catch 捕获）